package com.tedu.api.thread;

/**
 * 线程常用方法:五
 * yield()   当前线程暂停
 * 作用:yield暂停当前正在执行的对象[让当前线程让出CPU时间片资源]
 *     执行其他线程,但是yield,CPU时间片有时候没有效果
 *
 * 需求:门---容纳一个人进去   Dear
 *      创建两个线程      student1---如果先进门--假设:"你先"--yield()
 *                      student2---后进门
 */
public class Thread_yield {
    public static void main(String[] args) {
        //创建  门  对象
        Door door=new Door();
        //假设:我说句"你先进"
        String say="你先进";
        //创建两个student线程
        Thread student1=new Thread(()->{
            System.out.println("第一个人");
            door.enter();//进入教室
            //第一个同学:语句:你先进---当前暂停
            if (say.equals("你先进")){
                Thread.yield();  //静态方法:线程暂停
            }
        });
        Thread student2=new Thread(()->{
            System.out.println("第二个人");
            door.enter();//进入教室
        });
        student1.start();
        student2.start();
    }
}
class Door{
    public void enter(){
        System.out.println("进屋上课~~");
    }
}